<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <div>123</div>
    <ul>
      <li>adb</li>
      <li>abc</li>
      <li>abc</li>
    </ul>
    <script>
      //事件对象
      /*     var div = document.querySelector('div');
      div.onclick = function (e) {
        //兼容
        console.log(e);
      };
      div.addEventListener('mouseover', function (e) {
        console.log(e);
      }); */
      //1.event 就是一个事件对象 写到我们侦听函数的小括号里 当形参来看
      //2. 事件对象只有有了事件才会存在, 它是系统给我们自动创建的,不需要我们传递参数
      //3. 事件 对象 是我们 事件的一系列相关数据的集合 跟事件 相关
      //4这个时间对象我们可以自己命名比如event  evt  e
      //5 时间对象也有兼容性问题 ie678 通过window 兼容的写法  e = e || window.event

      //-------------------------------------------
      //常见事件对象属性和方法
      //1.e.target 返回的是点击触发事件的对象(元素)  点哪个元素就是哪个元素
      //区别 :e.target点击了哪个元素就返回那个元素的 | this是 只绑定了事件源
      var ul = document.querySelector('ul');
      ul.addEventListener('click', function (e) {
        //e.target 表示正在操作的那个元素
        //this 指向的是事件源
        console.log(e.target, 'e.target'); //点谁就返回谁
        console.log(this, 'this'); //只返回this   ul
      });
    </script>
  </body>
</html>
